package operation.madiator.obj;

import operation.madiator.abs.Colleague;
import operation.madiator.abs.Mediator;

import java.util.Map;

public class ConcreteMediator extends Mediator {
    Map<String, Colleague> map;
    @Override
    public void register(String name, Colleague colleague) {
        map.put(name, colleague);
    }

    // 中介者的核心方法
    // 1. 根据得到的消息完成对应的任务
    // 2. 中介者在这个方法中，协调各个具体的同事对象
    @Override
    public void getMessage(int stateChange, String name) {
        Colleague tmp;
        if ((tmp = map.get(name)) instanceof Alarm) {
            // 之后的工作流程
        } else if (tmp instanceof Curtain) {
            // 之后的工作流程
        }
    }
}
